package arraylist;
import java.util.ArrayList;
import java.util.List;

public class Yanghui {
    public static List<List<Integer>> generate(int rows){
        List<List<Integer>> list = new ArrayList<>();
        if(rows == 0) {
            return list;
        }

        list.add(new ArrayList<>());
        list.get(0).add(1);
        if(rows == 1){
            return list;
        }
        list.add(new ArrayList<>());
        list.get(1).add(1);
        list.get(1).add(1);
        if(rows == 2){
            return list;
        }

        for (int i = 3; i <=rows ; i++) {
            List<Integer> arr = new ArrayList<>();
            list.add(arr);
            list.get(i-1).add(1);
            for (int j = 0; j <i-2 ; j++) {
                List<Integer> ans = list.get(i - 2);
                int first = ans.get(j);
                int second = ans.get(j + 1);
                int e = first + second;
                arr.add(e);
            }
            arr.add(1);
        }
        return list;
    }


        public static void main(String[] args) {
            Yanghui solution = new Yanghui();
            System.out.println(solution.generate(5));
        }
}


